package faw.car.ccentersdk.prop;

import java.util.ArrayList;
import java.util.HashMap;

/**
 * @Author zhuima
 */
public interface HQCarPropertyManagerApi {
    void registerListener(int propertyId, IHQCarPropertyEventListener listener) throws HQCarPropertyException;

    void registerListener(int propertyId, int identify, IHQCarPropertyEventListener listener) throws HQCarPropertyException;

    void unregisterListener(int propertyId, IHQCarPropertyEventListener listener) throws HQCarPropertyException;

    void unregisterListener(int propertyId, int identify, IHQCarPropertyEventListener listener) throws HQCarPropertyException;

    HQCarPropertyValue getProperty(int propertyId) throws HQCarPropertyException;

    HQCarPropertyValue getProperty(int propertyId, int area) throws HQCarPropertyException;

    HQCarPropertyValue getProperty(int propertyId, int area, int identify) throws HQCarPropertyException;

    HQCarPropertyValue getProperty(int propertyId, HQCarPropertyExtParameter parameter) throws HQCarPropertyException;

    RetValue setProperty(HQCarPropertyValue value) throws HQCarPropertyException;

    ArrayList<HQCarPropertyValue> getProperties(HashMap<Integer, HQCarPropertyExtParameter> data) throws HQCarPropertyException;
}
